package org.xxpay.core.entity;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class AlipayCashExample implements Serializable {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private static final long serialVersionUID = 1L;

    private Integer limit;

    private Integer offset;

    public AlipayCashExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria implements Serializable {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCouponNameIsNull() {
            addCriterion("CouponName is null");
            return (Criteria) this;
        }

        public Criteria andCouponNameIsNotNull() {
            addCriterion("CouponName is not null");
            return (Criteria) this;
        }

        public Criteria andCouponNameEqualTo(String value) {
            addCriterion("CouponName =", value, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameNotEqualTo(String value) {
            addCriterion("CouponName <>", value, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameGreaterThan(String value) {
            addCriterion("CouponName >", value, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameGreaterThanOrEqualTo(String value) {
            addCriterion("CouponName >=", value, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameLessThan(String value) {
            addCriterion("CouponName <", value, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameLessThanOrEqualTo(String value) {
            addCriterion("CouponName <=", value, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameLike(String value) {
            addCriterion("CouponName like", value, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameNotLike(String value) {
            addCriterion("CouponName not like", value, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameIn(List<String> values) {
            addCriterion("CouponName in", values, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameNotIn(List<String> values) {
            addCriterion("CouponName not in", values, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameBetween(String value1, String value2) {
            addCriterion("CouponName between", value1, value2, "couponName");
            return (Criteria) this;
        }

        public Criteria andCouponNameNotBetween(String value1, String value2) {
            addCriterion("CouponName not between", value1, value2, "couponName");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgIsNull() {
            addCriterion("PrizeMsg is null");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgIsNotNull() {
            addCriterion("PrizeMsg is not null");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgEqualTo(String value) {
            addCriterion("PrizeMsg =", value, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgNotEqualTo(String value) {
            addCriterion("PrizeMsg <>", value, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgGreaterThan(String value) {
            addCriterion("PrizeMsg >", value, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgGreaterThanOrEqualTo(String value) {
            addCriterion("PrizeMsg >=", value, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgLessThan(String value) {
            addCriterion("PrizeMsg <", value, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgLessThanOrEqualTo(String value) {
            addCriterion("PrizeMsg <=", value, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgLike(String value) {
            addCriterion("PrizeMsg like", value, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgNotLike(String value) {
            addCriterion("PrizeMsg not like", value, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgIn(List<String> values) {
            addCriterion("PrizeMsg in", values, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgNotIn(List<String> values) {
            addCriterion("PrizeMsg not in", values, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgBetween(String value1, String value2) {
            addCriterion("PrizeMsg between", value1, value2, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeMsgNotBetween(String value1, String value2) {
            addCriterion("PrizeMsg not between", value1, value2, "prizeMsg");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeIsNull() {
            addCriterion("PrizeType is null");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeIsNotNull() {
            addCriterion("PrizeType is not null");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeEqualTo(String value) {
            addCriterion("PrizeType =", value, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeNotEqualTo(String value) {
            addCriterion("PrizeType <>", value, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeGreaterThan(String value) {
            addCriterion("PrizeType >", value, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeGreaterThanOrEqualTo(String value) {
            addCriterion("PrizeType >=", value, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeLessThan(String value) {
            addCriterion("PrizeType <", value, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeLessThanOrEqualTo(String value) {
            addCriterion("PrizeType <=", value, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeLike(String value) {
            addCriterion("PrizeType like", value, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeNotLike(String value) {
            addCriterion("PrizeType not like", value, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeIn(List<String> values) {
            addCriterion("PrizeType in", values, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeNotIn(List<String> values) {
            addCriterion("PrizeType not in", values, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeBetween(String value1, String value2) {
            addCriterion("PrizeType between", value1, value2, "prizeType");
            return (Criteria) this;
        }

        public Criteria andPrizeTypeNotBetween(String value1, String value2) {
            addCriterion("PrizeType not between", value1, value2, "prizeType");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyIsNull() {
            addCriterion("TotalMoney is null");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyIsNotNull() {
            addCriterion("TotalMoney is not null");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyEqualTo(Long value) {
            addCriterion("TotalMoney =", value, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyNotEqualTo(Long value) {
            addCriterion("TotalMoney <>", value, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyGreaterThan(Long value) {
            addCriterion("TotalMoney >", value, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyGreaterThanOrEqualTo(Long value) {
            addCriterion("TotalMoney >=", value, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyLessThan(Long value) {
            addCriterion("TotalMoney <", value, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyLessThanOrEqualTo(Long value) {
            addCriterion("TotalMoney <=", value, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyIn(List<Long> values) {
            addCriterion("TotalMoney in", values, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyNotIn(List<Long> values) {
            addCriterion("TotalMoney not in", values, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyBetween(Long value1, Long value2) {
            addCriterion("TotalMoney between", value1, value2, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalMoneyNotBetween(Long value1, Long value2) {
            addCriterion("TotalMoney not between", value1, value2, "totalMoney");
            return (Criteria) this;
        }

        public Criteria andTotalNumIsNull() {
            addCriterion("TotalNum is null");
            return (Criteria) this;
        }

        public Criteria andTotalNumIsNotNull() {
            addCriterion("TotalNum is not null");
            return (Criteria) this;
        }

        public Criteria andTotalNumEqualTo(Integer value) {
            addCriterion("TotalNum =", value, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumNotEqualTo(Integer value) {
            addCriterion("TotalNum <>", value, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumGreaterThan(Integer value) {
            addCriterion("TotalNum >", value, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumGreaterThanOrEqualTo(Integer value) {
            addCriterion("TotalNum >=", value, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumLessThan(Integer value) {
            addCriterion("TotalNum <", value, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumLessThanOrEqualTo(Integer value) {
            addCriterion("TotalNum <=", value, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumIn(List<Integer> values) {
            addCriterion("TotalNum in", values, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumNotIn(List<Integer> values) {
            addCriterion("TotalNum not in", values, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumBetween(Integer value1, Integer value2) {
            addCriterion("TotalNum between", value1, value2, "totalNum");
            return (Criteria) this;
        }

        public Criteria andTotalNumNotBetween(Integer value1, Integer value2) {
            addCriterion("TotalNum not between", value1, value2, "totalNum");
            return (Criteria) this;
        }

        public Criteria andStartTimeIsNull() {
            addCriterion("StartTime is null");
            return (Criteria) this;
        }

        public Criteria andStartTimeIsNotNull() {
            addCriterion("StartTime is not null");
            return (Criteria) this;
        }

        public Criteria andStartTimeEqualTo(Date value) {
            addCriterion("StartTime =", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotEqualTo(Date value) {
            addCriterion("StartTime <>", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeGreaterThan(Date value) {
            addCriterion("StartTime >", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("StartTime >=", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeLessThan(Date value) {
            addCriterion("StartTime <", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeLessThanOrEqualTo(Date value) {
            addCriterion("StartTime <=", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeIn(List<Date> values) {
            addCriterion("StartTime in", values, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotIn(List<Date> values) {
            addCriterion("StartTime not in", values, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeBetween(Date value1, Date value2) {
            addCriterion("StartTime between", value1, value2, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotBetween(Date value1, Date value2) {
            addCriterion("StartTime not between", value1, value2, "startTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeIsNull() {
            addCriterion("EndTime is null");
            return (Criteria) this;
        }

        public Criteria andEndTimeIsNotNull() {
            addCriterion("EndTime is not null");
            return (Criteria) this;
        }

        public Criteria andEndTimeEqualTo(Date value) {
            addCriterion("EndTime =", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotEqualTo(Date value) {
            addCriterion("EndTime <>", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeGreaterThan(Date value) {
            addCriterion("EndTime >", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("EndTime >=", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeLessThan(Date value) {
            addCriterion("EndTime <", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeLessThanOrEqualTo(Date value) {
            addCriterion("EndTime <=", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeIn(List<Date> values) {
            addCriterion("EndTime in", values, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotIn(List<Date> values) {
            addCriterion("EndTime not in", values, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeBetween(Date value1, Date value2) {
            addCriterion("EndTime between", value1, value2, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotBetween(Date value1, Date value2) {
            addCriterion("EndTime not between", value1, value2, "endTime");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyIsNull() {
            addCriterion("SendFreqency is null");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyIsNotNull() {
            addCriterion("SendFreqency is not null");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyEqualTo(String value) {
            addCriterion("SendFreqency =", value, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyNotEqualTo(String value) {
            addCriterion("SendFreqency <>", value, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyGreaterThan(String value) {
            addCriterion("SendFreqency >", value, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyGreaterThanOrEqualTo(String value) {
            addCriterion("SendFreqency >=", value, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyLessThan(String value) {
            addCriterion("SendFreqency <", value, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyLessThanOrEqualTo(String value) {
            addCriterion("SendFreqency <=", value, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyLike(String value) {
            addCriterion("SendFreqency like", value, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyNotLike(String value) {
            addCriterion("SendFreqency not like", value, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyIn(List<String> values) {
            addCriterion("SendFreqency in", values, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyNotIn(List<String> values) {
            addCriterion("SendFreqency not in", values, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyBetween(String value1, String value2) {
            addCriterion("SendFreqency between", value1, value2, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andSendFreqencyNotBetween(String value1, String value2) {
            addCriterion("SendFreqency not between", value1, value2, "sendFreqency");
            return (Criteria) this;
        }

        public Criteria andTaskStatusIsNull() {
            addCriterion("TaskStatus is null");
            return (Criteria) this;
        }

        public Criteria andTaskStatusIsNotNull() {
            addCriterion("TaskStatus is not null");
            return (Criteria) this;
        }

        public Criteria andTaskStatusEqualTo(Byte value) {
            addCriterion("TaskStatus =", value, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusNotEqualTo(Byte value) {
            addCriterion("TaskStatus <>", value, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusGreaterThan(Byte value) {
            addCriterion("TaskStatus >", value, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusGreaterThanOrEqualTo(Byte value) {
            addCriterion("TaskStatus >=", value, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusLessThan(Byte value) {
            addCriterion("TaskStatus <", value, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusLessThanOrEqualTo(Byte value) {
            addCriterion("TaskStatus <=", value, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusIn(List<Byte> values) {
            addCriterion("TaskStatus in", values, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusNotIn(List<Byte> values) {
            addCriterion("TaskStatus not in", values, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusBetween(Byte value1, Byte value2) {
            addCriterion("TaskStatus between", value1, value2, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andTaskStatusNotBetween(Byte value1, Byte value2) {
            addCriterion("TaskStatus not between", value1, value2, "taskStatus");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdIsNull() {
            addCriterion("AccountTemplateId is null");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdIsNotNull() {
            addCriterion("AccountTemplateId is not null");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdEqualTo(Long value) {
            addCriterion("AccountTemplateId =", value, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdNotEqualTo(Long value) {
            addCriterion("AccountTemplateId <>", value, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdGreaterThan(Long value) {
            addCriterion("AccountTemplateId >", value, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdGreaterThanOrEqualTo(Long value) {
            addCriterion("AccountTemplateId >=", value, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdLessThan(Long value) {
            addCriterion("AccountTemplateId <", value, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdLessThanOrEqualTo(Long value) {
            addCriterion("AccountTemplateId <=", value, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdIn(List<Long> values) {
            addCriterion("AccountTemplateId in", values, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdNotIn(List<Long> values) {
            addCriterion("AccountTemplateId not in", values, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdBetween(Long value1, Long value2) {
            addCriterion("AccountTemplateId between", value1, value2, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAccountTemplateIdNotBetween(Long value1, Long value2) {
            addCriterion("AccountTemplateId not between", value1, value2, "accountTemplateId");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusIsNull() {
            addCriterion("AlipayStatus is null");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusIsNotNull() {
            addCriterion("AlipayStatus is not null");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusEqualTo(String value) {
            addCriterion("AlipayStatus =", value, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusNotEqualTo(String value) {
            addCriterion("AlipayStatus <>", value, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusGreaterThan(String value) {
            addCriterion("AlipayStatus >", value, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusGreaterThanOrEqualTo(String value) {
            addCriterion("AlipayStatus >=", value, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusLessThan(String value) {
            addCriterion("AlipayStatus <", value, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusLessThanOrEqualTo(String value) {
            addCriterion("AlipayStatus <=", value, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusLike(String value) {
            addCriterion("AlipayStatus like", value, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusNotLike(String value) {
            addCriterion("AlipayStatus not like", value, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusIn(List<String> values) {
            addCriterion("AlipayStatus in", values, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusNotIn(List<String> values) {
            addCriterion("AlipayStatus not in", values, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusBetween(String value1, String value2) {
            addCriterion("AlipayStatus between", value1, value2, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayStatusNotBetween(String value1, String value2) {
            addCriterion("AlipayStatus not between", value1, value2, "alipayStatus");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoIsNull() {
            addCriterion("AlipayCrowdNo is null");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoIsNotNull() {
            addCriterion("AlipayCrowdNo is not null");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoEqualTo(String value) {
            addCriterion("AlipayCrowdNo =", value, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoNotEqualTo(String value) {
            addCriterion("AlipayCrowdNo <>", value, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoGreaterThan(String value) {
            addCriterion("AlipayCrowdNo >", value, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoGreaterThanOrEqualTo(String value) {
            addCriterion("AlipayCrowdNo >=", value, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoLessThan(String value) {
            addCriterion("AlipayCrowdNo <", value, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoLessThanOrEqualTo(String value) {
            addCriterion("AlipayCrowdNo <=", value, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoLike(String value) {
            addCriterion("AlipayCrowdNo like", value, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoNotLike(String value) {
            addCriterion("AlipayCrowdNo not like", value, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoIn(List<String> values) {
            addCriterion("AlipayCrowdNo in", values, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoNotIn(List<String> values) {
            addCriterion("AlipayCrowdNo not in", values, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoBetween(String value1, String value2) {
            addCriterion("AlipayCrowdNo between", value1, value2, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayCrowdNoNotBetween(String value1, String value2) {
            addCriterion("AlipayCrowdNo not between", value1, value2, "alipayCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoIsNull() {
            addCriterion("AlipayOriginCrowdNo is null");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoIsNotNull() {
            addCriterion("AlipayOriginCrowdNo is not null");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoEqualTo(String value) {
            addCriterion("AlipayOriginCrowdNo =", value, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoNotEqualTo(String value) {
            addCriterion("AlipayOriginCrowdNo <>", value, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoGreaterThan(String value) {
            addCriterion("AlipayOriginCrowdNo >", value, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoGreaterThanOrEqualTo(String value) {
            addCriterion("AlipayOriginCrowdNo >=", value, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoLessThan(String value) {
            addCriterion("AlipayOriginCrowdNo <", value, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoLessThanOrEqualTo(String value) {
            addCriterion("AlipayOriginCrowdNo <=", value, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoLike(String value) {
            addCriterion("AlipayOriginCrowdNo like", value, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoNotLike(String value) {
            addCriterion("AlipayOriginCrowdNo not like", value, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoIn(List<String> values) {
            addCriterion("AlipayOriginCrowdNo in", values, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoNotIn(List<String> values) {
            addCriterion("AlipayOriginCrowdNo not in", values, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoBetween(String value1, String value2) {
            addCriterion("AlipayOriginCrowdNo between", value1, value2, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipayOriginCrowdNoNotBetween(String value1, String value2) {
            addCriterion("AlipayOriginCrowdNo not between", value1, value2, "alipayOriginCrowdNo");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountIsNull() {
            addCriterion("AlipaySendAmount is null");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountIsNotNull() {
            addCriterion("AlipaySendAmount is not null");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountEqualTo(Long value) {
            addCriterion("AlipaySendAmount =", value, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountNotEqualTo(Long value) {
            addCriterion("AlipaySendAmount <>", value, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountGreaterThan(Long value) {
            addCriterion("AlipaySendAmount >", value, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountGreaterThanOrEqualTo(Long value) {
            addCriterion("AlipaySendAmount >=", value, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountLessThan(Long value) {
            addCriterion("AlipaySendAmount <", value, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountLessThanOrEqualTo(Long value) {
            addCriterion("AlipaySendAmount <=", value, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountIn(List<Long> values) {
            addCriterion("AlipaySendAmount in", values, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountNotIn(List<Long> values) {
            addCriterion("AlipaySendAmount not in", values, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountBetween(Long value1, Long value2) {
            addCriterion("AlipaySendAmount between", value1, value2, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipaySendAmountNotBetween(Long value1, Long value2) {
            addCriterion("AlipaySendAmount not between", value1, value2, "alipaySendAmount");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlIsNull() {
            addCriterion("AlipayPayUrl is null");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlIsNotNull() {
            addCriterion("AlipayPayUrl is not null");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlEqualTo(String value) {
            addCriterion("AlipayPayUrl =", value, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlNotEqualTo(String value) {
            addCriterion("AlipayPayUrl <>", value, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlGreaterThan(String value) {
            addCriterion("AlipayPayUrl >", value, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlGreaterThanOrEqualTo(String value) {
            addCriterion("AlipayPayUrl >=", value, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlLessThan(String value) {
            addCriterion("AlipayPayUrl <", value, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlLessThanOrEqualTo(String value) {
            addCriterion("AlipayPayUrl <=", value, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlLike(String value) {
            addCriterion("AlipayPayUrl like", value, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlNotLike(String value) {
            addCriterion("AlipayPayUrl not like", value, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlIn(List<String> values) {
            addCriterion("AlipayPayUrl in", values, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlNotIn(List<String> values) {
            addCriterion("AlipayPayUrl not in", values, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlBetween(String value1, String value2) {
            addCriterion("AlipayPayUrl between", value1, value2, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayPayUrlNotBetween(String value1, String value2) {
            addCriterion("AlipayPayUrl not between", value1, value2, "alipayPayUrl");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgIsNull() {
            addCriterion("AlipayErrorMsg is null");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgIsNotNull() {
            addCriterion("AlipayErrorMsg is not null");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgEqualTo(String value) {
            addCriterion("AlipayErrorMsg =", value, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgNotEqualTo(String value) {
            addCriterion("AlipayErrorMsg <>", value, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgGreaterThan(String value) {
            addCriterion("AlipayErrorMsg >", value, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgGreaterThanOrEqualTo(String value) {
            addCriterion("AlipayErrorMsg >=", value, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgLessThan(String value) {
            addCriterion("AlipayErrorMsg <", value, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgLessThanOrEqualTo(String value) {
            addCriterion("AlipayErrorMsg <=", value, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgLike(String value) {
            addCriterion("AlipayErrorMsg like", value, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgNotLike(String value) {
            addCriterion("AlipayErrorMsg not like", value, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgIn(List<String> values) {
            addCriterion("AlipayErrorMsg in", values, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgNotIn(List<String> values) {
            addCriterion("AlipayErrorMsg not in", values, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgBetween(String value1, String value2) {
            addCriterion("AlipayErrorMsg between", value1, value2, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andAlipayErrorMsgNotBetween(String value1, String value2) {
            addCriterion("AlipayErrorMsg not between", value1, value2, "alipayErrorMsg");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("CreateTime is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("CreateTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("CreateTime =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("CreateTime <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("CreateTime >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("CreateTime >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("CreateTime <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("CreateTime <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("CreateTime in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("CreateTime not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("CreateTime between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("CreateTime not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("UpdateTime is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("UpdateTime is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("UpdateTime =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("UpdateTime <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("UpdateTime >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("UpdateTime >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("UpdateTime <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("UpdateTime <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("UpdateTime in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("UpdateTime not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("UpdateTime between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("UpdateTime not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria implements Serializable {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion implements Serializable {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}